\section{Conclusiones}
\label{sec:conclusiones}

Los ejercicios tenian una correlatividad deteminante para el funcionamiento general del programa a desarrollar. A medida que se avanzaba en los ejercicios, distintos fragmentos de c'odigo fueron mudados a otros modulos separando la funcionalidad de cada pieza de software. Por ejemplo el caso del scheduler y cargar el primer worm, que en el ejercicio 6 aun no se podia, o cuando necesitamos la funci'on \texttt{copiar\_pagina} (que asignamos dentro de la MMU) para la duplicaci'on de tareas.

La elecci'on de utilizar un Task Gate para atender la interrupci'on 66 simplific'o significativamente el ejercicio de duplicar proceso. Ademas pudimos observar que la modularizaci'on y reutilizaci'on de c'odigo es una buena estrategia para no generar errores. Hacer funciones param'etricas que aislen funcionalidad y se puedan usar en distintas ocasiones hacen que el c'odigo este indefectiblemente mas testeado y mas robusto. Por ejemplo en el caso de \texttt{cargar\_tss}, \texttt{cargar\_tss\_desc}, \texttt{buscar\_entrada}, etc.

Encontramos una diferencia de complejidad significativa entre el desarrollar c'odigo de aplicaciones con respecto a c'odigo de sistema. Principalmente encontramos muchos tecnicismos que recordar (los recursos mas usados fueron los manuales) mientras que la parte mas "algoritmica" no resulto tan compleja. 

Las herramientas de debugging y testing complementarias (hechas por nosotros) fueron determinantes a la hora de encontrar errores y acelerar el proceso de desarrollo. 

Este trabajo demuestra cuan responsables deben ser los programadores de un sistema operativo para no dejar agujeros de seguridad. Es importante conocer a fondo cada una de las herramientas del procesador a la hora de utilizarlas. Peque'nos errores conceptuales pueden generar mal funcionamiento e introducir potenciales vulnerabilidades en el sistema.

Comprendimos la complejidad de las tareas b'asicas que un sistema operativo debe realizar, desde el manejo de memoria, administraci'on de tareas y mecanismos de proteccion. A pesar de que algunos de estos conceptos no los implentamos y otros los hicimos de una manera muy rudimentaria.






